table of contents
SCHED_SETPARAM(2) | Podręcznik programisty Linuksa | SCHED_SETPARAM(2) |
NAZWA¶
sched_setparam, sched_getparam - ustawienie i pobranie parametrów szeregowaniu zadań
SKŁADNIA¶
#include <sched.h>
int sched_setparam(pid_t pid, const struct sched_param *p);
int sched_getparam(pid_t pid, struct sched_param *p);
struct sched_param { ... int sched_priority; ... };
OPIS¶
sched_setparam ustawia parametry szeregowania zadań, związane z właściwą dla procesu określonego przez pid polityką szeregowania zadań. Jeśli pid ma wartość zero, to ustawiane są parametry procesu bieżącego. Interpretacja parametru p zależy od wybranej polityki. Obecnie Linux wspiera następujące polityki szeregowania zadań: SCHED_FIFO, SCHED_RR i SCHED_OTHER.
sched_getparam pobiera parametry szeregowania zadań, odnoszące się do procesu określonego przez pid. Jeśli pid ma wartość zero, to pobierane są parametry procesu bieżącego.
sched_setparam sprawdza czy p jest odpowiedni dla polityki szeregowania zadań dla danego procesu. Parametr p->sched_priority musi znajdować się w zakresie określonym przez sched_get_priority_min i sched_get_priority_max.
Systemy POSIX-owe, które wspierają sched_setparam i sched_getparam, definiują w <unistd.h> _POSIX_PRIORITY_SCHEDULING.
WARTOŚĆ ZWRACANA¶
Po pomyślnym zakończeniu sched_setparam i sched_getparam zwracają zero. Po błędzie zwracane jest -1 i odpowiednio ustawiane errno.
BŁĘDY¶
- ESRCH
- Nie znaleziono procesu o ID równym pid.
- EPERM
- Proces wołający nie ma odpowiednich uprawnień. Proces wołający sched_setparam musi mieć efektywny uid równy euid lub uid procesu określonego przez pid, lub musi być procesem superużytkownika.
- EINVAL
- Parametr p nie ma sensu w bieżącej polityce szeregowania zadań.
ZGODNE Z¶
POSIX.1b (wcześniej POSIX.4)
ZOBACZ TAKŻE¶
sched_setaffinity(2), sched_getaffinity(2), sched_setscheduler(2), sched_getscheduler(2), sched_get_priority_max(2), sched_get_priority_min(2), nice(2), setpriority(2), getpriority(2),
sched_setscheduler(2) zawiera opis zasad szeregowania zadań w Linuksie.
Programming for the real world - POSIX.4 Billa O.
Gallmeistera, O'Reilly & Associates, Inc., ISBN 1-56592-074-0
IEEE Std 1003.1b-1993 (standard POSIX.1b)
ISO/IEC 9945-1:1996
1996-04-10 | Linux 1.3.81 |